package com.ruoyi.system.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 【请填写功能名称】对象 sys_key_yk
 * 
 * @author ruoyi
 * @date 2024-09-29
 */
public class SysKeyDida extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    /** 卡密 */
    @Excel(name = "卡密")
    private String keyNumber;

    /** 使用者 */
    @Excel(name = "使用者")
    private String account;

    /** 激活时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "激活时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date activationTime;

    /** 到期时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "到期时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date expirationTime;

    /** 是否激活 */
    @Excel(name = "是否激活")
    private String isActivated;

    /** 卡密状态（0正常 1停用） */
    @Excel(name = "卡密状态", readConverterExp = "0=正常,1=停用")
    private String status;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    /** 卡密类型 0天卡 1周卡 2月卡 3测试卡 */
    @Excel(name = "卡密类型 0天卡 1周卡 2月卡 3测试卡")
    private String keyTypes;

    /** 使用者账号 */
    @Excel(name = "使用者账号")
    private String personName;
    private int number;
    private String remark;

    @Override
    public String getRemark() {
        return remark;
    }

    @Override
    public void setRemark(String remark) {
        this.remark = remark;
    }

    public int getNumber() {
        return number;
    }


    public void setNumber(int number) {
        this.number = number;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setKeyNumber(String keyNumber) 
    {
        this.keyNumber = keyNumber;
    }

    public String getKeyNumber() 
    {
        return keyNumber;
    }
    public void setAccount(String account) 
    {
        this.account = account;
    }

    public String getAccount() 
    {
        return account;
    }
    public void setActivationTime(Date activationTime) 
    {
        this.activationTime = activationTime;
    }

    public Date getActivationTime() 
    {
        return activationTime;
    }
    public void setExpirationTime(Date expirationTime) 
    {
        this.expirationTime = expirationTime;
    }

    public Date getExpirationTime() 
    {
        return expirationTime;
    }
    public void setIsActivated(String isActivated) 
    {
        this.isActivated = isActivated;
    }

    public String getIsActivated() 
    {
        return isActivated;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }
    public void setKeyTypes(String keyTypes) 
    {
        this.keyTypes = keyTypes;
    }

    public String getKeyTypes() 
    {
        return keyTypes;
    }
    public void setPersonName(String personName) 
    {
        this.personName = personName;
    }

    public String getPersonName() 
    {
        return personName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("keyNumber", getKeyNumber())
            .append("account", getAccount())
            .append("activationTime", getActivationTime())
            .append("expirationTime", getExpirationTime())
            .append("isActivated", getIsActivated())
            .append("status", getStatus())
            .append("delFlag", getDelFlag())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("keyTypes", getKeyTypes())
            .append("personName", getPersonName())
            .toString();
    }
}
